/**
 * 发送GET请求
 * @author Thousand-paper-crane
 * @param {String} url  请求地址
 * @param {String} params   请求参数
 * @param {Function} headersFn   自定义请求头
 * @return  Promise  保存成功和失败的数据
 */
function get(url,params,headersFn){
    return new Promise((resolve,reject)=>{
        const xhr=new XMLHttpRequest
        xhr.onreadystatechange=function(){
            if(xhr.readyState==4){
                if(xhr.status==200){
                    let res=JSON.parse(xhr.responseText)
                    resolve(res)
                }else{
                    reject(xhr.status)
                }
            }
        }
        xhr.open('get', `${url}?${params}`)
        if(headersFn){headersFn(xhr)}
        xhr.send()
    })
}





/**
 * 发送POST请求
 * @author Thousand-paper-crane
 * @param {String} url  请求地址
 * @param {String} params   请求参数
 * @param {Function} headersFn   自定义请求头
 * @return  Promise  保存成功和失败的数据
 */
function post(url,params,headersFn){
    return new Promise((resolve,reject)=>{
        const xhr=new XMLHttpRequest
        xhr.onreadystatechange=function(){
            if(xhr.readyState==4){
                if(xhr.status==200){
                    let res=JSON.parse(xhr.responseText)
                    resolve(res)
                }else{
                    reject(xhr.status)
                }
            }
        }
        xhr.open('post', url)
        xhr.setRequestHeader('content-type','application/x-www-form-urlencoded')
        if(headersFn){headersFn(xhr)}
        xhr.send(params)
    })
}